package domain.property;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

@Getter
@Setter
@ToString
public class HiveProperty {

  /**
   * 0 内部表，1 外部表
   */
  private Integer type;

  /**
   * 存储路径
   */
  private String location;

  /**
   * 0text；1orc；2sequence；3rc；4parquet；5自定义
   */
  private Integer storageMode;

  /**
   * storageMode=2时 0none；1record；2block
   */
  private Integer sequenceType;

  /**
   * 自定义InputFormat
   */
  private String inputFormat;

  /**
   * 自定义outputFormat
   */
  private String outputFormat;

  /**
   * 是否存在数据倾斜字段
   */
  private Integer skewed;

  /**
   * 数据倾斜SQL
   */
  private String skewedField;

  /**
   * 是否分区
   */
  private Integer partitioned;

  /**
   * 分区字段SQL
   */
  private String partitionField;

  /**
   * 是否分桶
   */
  private Integer bucket;

  /**
   * 分桶字段SQL
   */
  private String bucketField;

  /**
   * 行分隔符
   */
  private String separatorLine;

  /**
   * 列分隔符
   */
  private String separatorColumn;

  /**
   * 集合分隔符
   */
  private String separatorCollection;

  /**
   * map分隔符
   */
  private String separatorMap;

  /**
   * 属性
   */
  private String tblProperties;
}
